Skip to content

fix(build): download protoc matching target arch in image builds#5573

Open
bobbai00 wants to merge 2 commits into
apache:mainfrom
bobbai00:fix/protoc-arch-arm64-build
Open

fix(build): download protoc matching target arch in image builds#5573
bobbai00 wants to merge 2 commits into
apache:mainfrom
bobbai00:fix/protoc-arch-arm64-build

Conversation

@bobbai00

@bobbai00 bobbai00 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

What changes were proposed in this PR?

The three service Dockerfiles (texera-web-application, computing-unit-master, computing-unit-worker) always downloaded the linux-x86_64 protoc release, so the build-time Python proto regeneration failed on ARM64 image builds with protoc: No such file or directory (exit 127). This selects the protoc asset by architecture from uname -m (x86_64/amd64x86_64, aarch64/arm64aarch_64, unknown → fail fast), so both platforms build.

Any related issues, documentation, discussions?

Closes #5571

How was this PR tested?

  • Confirmed protoc 3.19.4 publishes a linux-aarch_64 asset and that the URL the fix builds resolves (HTTP 200).
  • Confirmed the case selection under /bin/sh maps x86_64/amd64x86_64, aarch64/arm64aarch_64, and exits non-zero on an unknown architecture.
  • The original failure was isolated to this single download line (the AMD64 image already builds), so the targeted fix addresses the failing step on ARM64.

Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Opus 4.8 (1M context)

The three service Dockerfiles always fetched the linux-x86_64 protoc
release, so the build-time proto regeneration failed on ARM64 image
builds (protoc: No such file or directory, exit 127). Select the protoc
asset (x86_64 / aarch_64) from $(uname -m) so all target platforms build.
@bobbai00

bobbai00 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

@xuang7 I think this fix needs to be included in release v1.2

@xuang7 xuang7 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@xuang7 xuang7 added the release/v1.2 back porting to release/v1.2 label Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dev fix release/v1.2 back porting to release/v1.2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ARM64 Docker image build fails: protoc is downloaded for x86_64 only

2 participants